#include "../include/shell.h"
#include "../include/kc.h"
#include "../include/keyboard.h"
#include "../include/string.h"
#include "../include/video.h"

int procesosex[MAXPROCESOS];

extern int ejecutados[100];


int
top (int ja, char **v) {

    int i;
    int b;
    int j;
    PROCESO *proceso;
    int a = getcharNB ();
    char cadena[8];

    while (a != 'q') {
        //limpiaPantalla (i, (char **) b);
        printf ("               TOP\n", 20);
        printf ("Procesos y porcentaje de CPU utilizada ('q' para salir).\n", 57);
        printf ("PID          CPU%         TTY        NOMBRE\n", 46);

        for (i = 0; i < MAXPROCESOS; i++) {
            procesosex[i] = 0;

        }
        for (i = 0; i < 100; i++) {
            procesosex[ejecutados[i]]++;
        }

        putchar ('\n');
        j=0;
        for (i = 0; i < MAXPROCESOS; i++) {
            //proceso = GetProcessByPid (i);
            proceso = GetProcessByPosition(i);
            if (proceso->free_slot == 0) {
                j++;
                itoa (proceso->pid, cadena);
                printf (cadena, 8);
                printf ("     ", 5);
                itoa (procesosex[i], cadena);
                printf (cadena, 8);
                printf ("     ", 5);
                itoa (proceso->terminal, cadena);
                printf (cadena, 8);
                printf ("     ", 5);
                printf (proceso->nombre, strlen(proceso->nombre));
                putchar ('\n');
            }

        }
        while(j<21)
        {
            putchar('\n');
            j++;
        }


        a = getcharNB ();
        sleep (2);

    }
    printf("Top finalizado.\n",16);
}
